import { QuestionType, TemplateVO } from '@/api/exam/template/types';

interface TemplateCount {
  total: number;
  totalScore: number;
  questionTypeCount: Array<TemplateTypeCount>;
  tagCount: Array<any>;
}

interface TemplateTypeCount {
  questionType: QuestionType;
  count: number;
}

export interface RepoVO {
  /**
   * 题库ID
   */
  repoId: string;

  /**
   * 题库名称
   */
  repoName: string;

  /**
   * 题库图片
   */
  image: string;
  imageUrl: string;

  /**
   * 共享标志
   */
  shareFlag: string;

  /**
   * 题库标签
   */
  tag: Array<string>;

  /**
   * 题型统计
   */
  templateCount: TemplateCount;

  /**
   * 备注信息
   */
  remark: string;

}

export interface RepoForm extends BaseEntity {
  /**
   * 题库ID
   */
  repoId?: string | number;

  /**
   * 题库名称
   */
  repoName?: string;

  /**
   * 题库图片
   */
  image?: string | number;
  imageUrl?: string;

  /**
   * 共享标志
   */
  shareFlag?: string;

  tag: Array<string>;

  /**
   * 题型统计
   */
  templateCount: TemplateCount;

  /**
   * 备注信息
   */
  remark?: string;

}

export interface RepoQuery extends PageQuery {

  /**
   * 题库名称
   */
  repoName?: string;

  /**
   * 共享标志
   */
  shareFlag?: string;

  /**
   * 标签I
   */
  tag?: Array<string>;

  /**
   * 日期范围参数
   */
  params?: any;
}

export interface RepoInfoVo{
  /**
   * 题库ID
   */
  repoId: string;

  /**
   * 题库名称
   */
  repoName: string;

  children: Array<TemplateVO>;
}


